package examen2;
import ar.edu.untref.ordenamiento.Ordenamiento;

import org.junit.Assert;
import org.junit.Test;



public class OrdenamientoTestGaston {
	@Test
	public void pruebaDeSeleccion(){
		int[] vector = {5,3,1,2,4};
		int[] solucion = {1,2,3,4,5};
		OrdenamientoSeleccion nuevoOrden = new OrdenamientoSeleccion();
		
		System.out.println("[Info]*Resultado de Seleccion ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Seleccion ASC*");
		
		nuevoOrden.ordenar(vector);
		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Seleccion ASC*");
		Assert.assertArrayEquals(solucion, vector);
}
	@Test
	public void pruebaDeSeleccion2(){
		int[] vector = {5,4,6,2,3,1,2};
		int[] solucion = {1,2,2,3,4,5,6};
		OrdenamientoSeleccion nuevoOrden = new OrdenamientoSeleccion();
		
		System.out.println("[Info]*Resultado de Seleccion ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Seleccion ASC*");
		
		nuevoOrden.ordenar(vector);
		System.out.println("[Info]*Resultado de Seleccion ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Seleccion ASC*");
		Assert.assertArrayEquals(solucion, vector);
	}
	@Test
	public void pruebaDeBurbujeo(){
		int[] vector = {5,3,1,2,4};
		int[] solucion = {1,2,3,4,5};
		OrdenamientoBurbujeo nuevoOrden = new OrdenamientoBurbujeo();
		
		System.out.println("[Info]*Resultado de Burbujeo ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Burbujeo ASC*");
		
		nuevoOrden.ordenar(vector);
		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Burbujeo ASC*");
		Assert.assertArrayEquals(solucion, vector);
}
	@Test
	public void pruebaDeBurbujeo2(){
		int[] vector = {5,4,6,2,3,1,2};
		int[] solucion = {1,2,2,3,4,5,6};
		OrdenamientoBurbujeo nuevoOrden = new OrdenamientoBurbujeo();
		
		System.out.println("[Info]*Resultado de Burbujeo ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Burbujeo ASC*");
		
		nuevoOrden.ordenar(vector);
		System.out.println("[Info]*Resultado de Burbujeo ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Burbujeo ASC*");
		Assert.assertArrayEquals(solucion, vector);
	}
	
	@Test
	public void pruebaDeInsercion(){
		int[] vector = {5,3,1,2,4};
		int[] solucion = {1,2,3,4,5};
		OrdenamientoInsercion nuevoOrden = new OrdenamientoInsercion();
		
		System.out.println("[Info]*Resultado de Insercion ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Insercion ASC*");
		
		nuevoOrden.ordenar(vector);
		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Insercion ASC*");
		Assert.assertArrayEquals(solucion, vector);
}
	@Test
	public void pruebaDeInsercion2(){
		int[] vector = {5,4,6,2,3,1,2};
		int[] solucion = {1,2,2,3,4,5,6};
		OrdenamientoInsercion nuevoOrden = new OrdenamientoInsercion();
		
		System.out.println("[Info]*Resultado de Insercion ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Insercion ASC*");
		
		nuevoOrden.ordenar(vector);
		System.out.println("[Info]*Resultado de Insercion ASC*");

		for(int i = 0; i < vector.length; i++){
			System.out.println("[Print] Pos: "+i+" Valor: "+vector[i]);
		}
		System.out.println("[Info]*Fin de Resultado de Insercion ASC*");
		Assert.assertArrayEquals(solucion, vector);
	}
	
}
